package com.yxw.yxnet_cd_center.customer_service.dto;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.Valid;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.List;

/**
 * @author liuxin
 * @date 2023.09.15
 */
@Data
@ApiModel(value="NoticeAddDTO", description="消息查询DTO")
public class NoticeAddDTO implements Serializable {

    @NotNull(message = "项目ID不能为空")
    @ApiModelProperty(value = "项目ID")
    private Long projectId;

    @NotNull(message = "适用状态不能为空 1：在线 2：离线")
    @ApiModelProperty(value = "适用状态")
    private Integer suitStatus;

    @NotNull(message = "提醒状态不能为空")
    @ApiModelProperty(value = "提醒状态 0:禁用 1：启用")
    private Integer status;

    @Valid
    @NotEmpty(message = "提醒方式不能为空")
    @ApiModelProperty(value = "提醒方式")
    private List<Integer> noticeWay;

    @NotBlank(message = "提醒内容不能为空")
    @ApiModelProperty(value = "提醒内容")
    private String noticeDec;

    @NotNull(message = "提醒循环不能为空")
    @ApiModelProperty(value = "提醒循环  0:否 1：是")
    private Integer cycleFlag;

    @NotNull(message = "提醒对象不能为空")
    @ApiModelProperty(value = "提醒对象")
    private Long noticeObject;

    @ApiModelProperty(value = "循环频次")
    private Integer cycleFreq;

    @ApiModelProperty(value = "循环时长 分钟")
    private Integer cycleTime;

    @ApiModelProperty(value = "通知ID")
    private Long id;
}
